1. Field
The following description relates to computer software, and more particularly, to error-based program testing technology that evaluates quality of a program through error injection.
2. Description of the Related Art
An error-based test is a method that selects test data based on predictive knowledge that error types frequently generated in the past will be frequently generated in a system, a system component, or a program which is currently tested. An error-based testing process can be broken down into a process of generating an error program through error insertion and a process of executing the error program using test data.
When the error program is generated through the process of generating the error program, the generated error program is tested through the process of executing the error program. The error program is executed using a test set that is a set of test data until errors in the error program are detected.
In the error-based testing process, it is costly to execute the error program. That is, the error program is repeatedly executed until the corresponding errors are detected, which makes the error-based testing process very time consuming when there are a large number of error programs to be executed.
The error programs are repeatedly executed with respect to the test data until corresponding errors are detected. This means that the error programs are meaninglessly executed with respect to a large amount of test data until the errors they contain are detected.
Accordingly, there is a need for reducing error-based testing costs by reducing meaningless repetitive execution.
In the conventional art, Korean Patent No. 10-2010-0121225 discloses a low cost software reliability test technique through selective error injection utilization, and U.S. Patent No. 2008-0134160 discloses a software error insertion technique with respect to an error processing routine of Java applications.